package com.xj.common.bussiness.registerLicense.entity;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.sql.Date;

import static org.springframework.format.annotation.DateTimeFormat.ISO.DATE;

/**
 * 上户表格中的所有字段映射
 */
@Data
@EqualsAndHashCode(callSuper=false)
public class registerLicenseMould extends Model<registerLicenseMould> {

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

    private Integer id;
    /**
     * 表单状态
     */
    private String state;
    /**
     * 填表日期
     */
    @TableField(value="create_date")
    private Date createDate;
    /**
     * 设备申请人姓名(个人或企业名称)
     */
    @TableField(value="register_name")
    private String registerName;
    /**
     * 申请单位（0个人，1企业）
     */
    @TableField(value="user_type")
    private String userType;
    /**
     * 有效通信地址
     */
    private String address;
    /**
     * 申请人电话
     */
    @TableField(value="register_phone")
    private String registerPhone;
    /**
     * 用户表申请人身份证号
     */
    private String userIdentification;

    /**
     * 备案表申请人身份证号
     */
    private String identification;

    /**
     * 设备表申请人身份证号
     */
    private String deviceIdentification;

    /**
     * 企业联系人
     */
    @TableField(value="enter_link_man")
    private String enterLinkMan;
    /**
     * 组织机构代码
     */
    @TableField(value="org_code")
    private String orgCode;

    /**
     * 设备品牌
     */
    @TableField(value="deviec_brand")
    private String deviecBrand;
    /**
     * 机械类型（1-9对应挖掘机、装载机、矿用自卸车、推土机、压路机、平地机、混凝土机械、桩工机械、凿岩机械）
     */
    @TableField(value="machinery_type")
    private String machineryType;
    /**
     * 设备型号
     */
    @TableField(value="plate_subject")
    private String plateSubject;
    /**
     * 发动机型号
     */
    @TableField(value="engine_subject")
    private String engineSubject;
    /**
     * 出厂日期
     */
    @TableField(value="date_of_production")
    @DateTimeFormat(iso = DATE)
    private Date dateOfProduction;
    /**
     * 功率
     */
    private String power;
    /**
     * 购买时间
     */
    @TableField(value="res_buy_date")
    @DateTimeFormat(iso = DATE)
    private Date resBuyDate;
    /**
     * 发动机编号
     */
    @TableField(value="engine_plate_num")
    private String enginePlateNum;
    /**
     * 设备是（0国产，1合资，2进口）
     */
    @TableField(value="production_type")
    private String productionType;
    /**
     * 设备产地
     */
    @TableField(value="production_address")
    private String productionAddress;
    /**
     * 行走方式(0轮式，1履带)
     */
    private String maneuver;
    /**
     * 工作小时
     */
    @TableField(value="work_time")
    private Integer workTime;
    /**
     * 燃料类型（0柴油，1汽油，2天然气）
     */
    private String fuel;
    /**
     * 尾气排放值
     */
    @TableField(value="output_volume")
    private String outputVolume;
    /**
     * 备案表出厂编号
     */
    @TableField(value="factory_num")
    private String factoryNum;

    /**
     * 设备表出厂编号
     */
    private String deviceFactoryNum;

    /**
     * 备案表设备牌编号
     */
    @TableField(value="plate_num")
    private String plateNum;

    /**
     * 设备表设备牌编号
     */
    private String devicePlateNum;

    /**
     *  设备各种照片的集合
     */
    private String referenceDeviceImg;

    /**
     *  用户备案信息图片地址
     */
    // @TableField(value="reference_user_img")
    private String referenceUserImg;

    /**
     *  用户备案发票信息图片地址
     */
    // @TableField(value="reference_invoice_img")
    private String referenceInvoiceImg;


    public Integer getId() {
        return id;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    public String getRegisterName() {
        return registerName;
    }

    public void setRegisterName(String registerName) {
        this.registerName = registerName;
    }


    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getRegisterPhone() {
        return registerPhone;
    }

    public void setRegisterPhone(String registerPhone) {
        this.registerPhone = registerPhone;
    }


    public String getIdentification() {
        return identification;
    }

    public void setIdentification(String identification) {
        this.identification = identification;
    }

    public String getDeviceIdentification() {
        return deviceIdentification;
    }

    public void setDeviceIdentification(String deviceIdentification) {
        this.deviceIdentification = deviceIdentification;
    }

    public String getEnterLinkMan() {
        return enterLinkMan;
    }

    public void setEnterLinkMan(String enterLinkMan) {
        this.enterLinkMan = enterLinkMan;
    }

    public String getOrgCode() {
        return orgCode;
    }

    public void setOrgCode(String orgCode) {
        this.orgCode = orgCode;
    }

    public String getDeviecBrand() {
        return deviecBrand;
    }

    public void setDeviecBrand(String deviecBrand) {
        this.deviecBrand = deviecBrand;
    }

    public String getMachineryType() {
        return machineryType;
    }

    public void setMachineryType(String machineryType) {
        this.machineryType = machineryType;
    }

    public String getPlateSubject() {
        return plateSubject;
    }

    public void setPlateSubject(String plateSubject) {
        this.plateSubject = plateSubject;
    }

    public String getEngineSubject() {
        return engineSubject;
    }

    public void setEngineSubject(String engineSubject) {
        this.engineSubject = engineSubject;
    }

    public Date getDateOfProduction() {
        return dateOfProduction;
    }

    public void setDateOfProduction(Date dateOfProduction) {
        this.dateOfProduction = dateOfProduction;
    }

    public String getPower() {
        return power;
    }

    public void setPower(String power) {
        this.power = power;
    }

    public Date getResBuyDate() {
        return resBuyDate;
    }

    public void setResBuyDate(Date resBuyDate) {
        this.resBuyDate = resBuyDate;
    }

    public String getEnginePlateNum() {
        return enginePlateNum;
    }

    public void setEnginePlateNum(String enginePlateNum) {
        this.enginePlateNum = enginePlateNum;
    }

    public String getProductionType() {
        return productionType;
    }

    public void setProductionType(String productionType) {
        this.productionType = productionType;
    }

    public String getProductionAddress() {
        return productionAddress;
    }

    public void setProductionAddress(String productionAddress) {
        this.productionAddress = productionAddress;
    }

    public String getManeuver() {
        return maneuver;
    }

    public void setManeuver(String maneuver) {
        this.maneuver = maneuver;
    }

    public Integer getWorkTime() {
        return workTime;
    }

    public void setWorkTime(Integer workTime) {
        this.workTime = workTime;
    }

    public String getFuel() {
        return fuel;
    }

    public void setFuel(String fuel) {
        this.fuel = fuel;
    }

    public String getOutputVolume() {
        return outputVolume;
    }

    public void setOutputVolume(String outputVolume) {
        this.outputVolume = outputVolume;
    }

    public String getUserType() {
        return userType;
    }

    public void setUserType(String userType) {
        this.userType = userType;
    }

    public String getUserIdentification() {
        return userIdentification;
    }

    public void setUserIdentification(String userIdentification) {
        this.userIdentification = userIdentification;
    }

    public String getFactoryNum() {
        return factoryNum;
    }

    public void setFactoryNum(String factoryNum) {
        this.factoryNum = factoryNum;
    }

    public String getDeviceFactoryNum() {
        return deviceFactoryNum;
    }

    public void setDeviceFactoryNum(String deviceFactoryNum) {
        this.deviceFactoryNum = deviceFactoryNum;
    }

    public String getDevicePlateNum() {
        return devicePlateNum;
    }

    public void setDevicePlateNum(String devicePlateNum) {
        this.devicePlateNum = devicePlateNum;
    }

    public String getPlateNum() {
        return plateNum;
    }

    public void setPlateNum(String plateNum) {
        this.plateNum = plateNum;
    }

    public String getReferenceDeviceImg() {
        return referenceDeviceImg;
    }

    public void setReferenceDeviceImg(String referenceDeviceImg) {
        this.referenceDeviceImg = referenceDeviceImg;
    }

    public String getReferenceUserImg() {
        return referenceUserImg;
    }

    public void setReferenceUserImg(String referenceUserImg) {
        this.referenceUserImg = referenceUserImg;
    }

    public String getReferenceInvoiceImg() {
        return referenceInvoiceImg;
    }

    public void setReferenceInvoiceImg(String referenceInvoiceImg) {
        this.referenceInvoiceImg = referenceInvoiceImg;
    }
}
